package cn.stylefeng.guns.modular.wxuser.entity;

import com.baomidou.mybatisplus.annotation.*;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 
 * </p>
 *
 * @author lcw
 * @since 2019-10-22
 */
@TableName("tao_wx_user")
public class TaoWxUser implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 微信用户表，id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 创建时间
     */
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 更新时间
     */
    @TableField("updata_time")
    private Date updataTime;

    /**
     * 删除标识；0：未删除，1：已删除
     */
    @TableField("del_sign")
    private String delSign;

    /**
     * 昵称
     */
    @TableField("nick_name")
    private String nickName;

    /**
     * 真实姓名
     */
    @TableField("reale_name")
    private String realeName;

    /**
     * 注册账号（手机号）
     */
    @TableField("register_number")
    private Long registerNumber;

    /**
     * 身份证号
     */
    @TableField("id_number")
    private String idNumber;

    /**
     * 会员等级；0：普通用户，1：一级会员，2：二级会员，3：三级会员，4：体验用户
     */
    @TableField("member_grade")
    private String memberGrade;

    /**
     * 登录密码
     */
    @TableField("login_password")
    private String loginPassword;

    /**
     * 微信用户openid
     */
    @TableField("open_id")
    private String openId;

    /**
     * 账号 
     */
    @TableField("account_number")
    private String accountNumber;

    /**
     * 是否是会员
     */
    @TableField("is_member")
    private Integer isMember;

    /**
     * 当前会员可使用额度
     */
    @TableField("member_money")
    private BigDecimal memberMoney;

    /**
     * 被授权人open_id
     */
    @TableField("grant_openId")
    private String grantOpenId;

    /**
     * 支付通知
     */
    @TableField("notify")
    private String notify;

    /**
     * 推广者id  储存的是用户表的主键 id
     */
    @TableField("promoter_id")
    private Long promoterId;

    /**
     * 会员生效时间
     */
    @TableField("number_on")
    private String numberOn;

    /**
     * 会员失效时间
     */
    @TableField("number_off")
    private String numberOff;

    /**
     * 使用金额
     */
    @TableField("use_money")
    private BigDecimal useMoney;

    /**
     * 会员总额度
     */
    @TableField("quota_money")
    private BigDecimal quotaMoney;


    /**
     * 用户推广码
     */
    @TableField("generalization_code")
    private String generalizationCode;


    /**
     * 用户佣金
     */
    @TableField("commissions")
    private BigDecimal commissions;


    /**
     * 被推广码
     */
    @TableField("by_generalization_code")
    private String byGeneralizationCode;


    /**
     * 微信用户的头像地址
     */
    @TableField("head_image_url")
    private String headImageUrl;


    /**
     *  推广状态0代表对网推广，1对地推广
     */
    @TableField("extension_state")
    private Long extensionState;





    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdataTime() {
        return updataTime;
    }

    public void setUpdataTime(Date updataTime) {
        this.updataTime = updataTime;
    }

    public String getDelSign() {
        return delSign;
    }

    public void setDelSign(String delSign) {
        this.delSign = delSign;
    }

    public String getNickName() {
        return nickName;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }

    public String getRealeName() {
        return realeName;
    }

    public void setRealeName(String realeName) {
        this.realeName = realeName;
    }

    public Long getRegisterNumber() {
        return registerNumber;
    }

    public void setRegisterNumber(Long registerNumber) {
        this.registerNumber = registerNumber;
    }

    public String getIdNumber() {
        return idNumber;
    }

    public void setIdNumber(String idNumber) {
        this.idNumber = idNumber;
    }

    public String getMemberGrade() {
        return memberGrade;
    }

    public void setMemberGrade(String memberGrade) {
        this.memberGrade = memberGrade;
    }

    public String getLoginPassword() {
        return loginPassword;
    }

    public void setLoginPassword(String loginPassword) {
        this.loginPassword = loginPassword;
    }

    public String getOpenId() {
        return openId;
    }

    public void setOpenId(String openId) {
        this.openId = openId;
    }

    public String getAccountNumber() {
        return accountNumber;
    }

    public void setAccountNumber(String accountNumber) {
        this.accountNumber = accountNumber;
    }

    public Long getPromoterId() {
        return promoterId;
    }

    public void setPromoterId(Long promoterId) {
        this.promoterId = promoterId;
    }

    public String getNumberOn() {
        return numberOn;
    }

    public void setNumberOn(String numberOn) {
        this.numberOn = numberOn;
    }

    public String getNumberOff() {
        return numberOff;
    }

    public void setNumberOff(String numberOff) {
        this.numberOff = numberOff;
    }

    public BigDecimal getUseMoney() {
        return useMoney;
    }

    public void setUseMoney(BigDecimal useMoney) {
        this.useMoney = useMoney;
    }

    public BigDecimal getQuotaMoney() {
        return quotaMoney;
    }

    public void setQuotaMoney(BigDecimal quotaMoney) {
        this.quotaMoney = quotaMoney;
    }

    public String getGeneralizationCode() {
        return generalizationCode;
    }

    public void setGeneralizationCode(String generalizationCode) {
        this.generalizationCode = generalizationCode;
    }

    public BigDecimal getCommissions() {
        return commissions;
    }

    public void setCommissions(BigDecimal commissions) {
        this.commissions = commissions;
    }


    public String getByGeneralizationCode() {
        return byGeneralizationCode;
    }

    public void setByGeneralizationCode(String byGeneralizationCode) {
        this.byGeneralizationCode = byGeneralizationCode;
    }


    public String getHeadImageUrl() {
        return headImageUrl;
    }

    public void setHeadImageUrl(String headImageUrl) {
        this.headImageUrl = headImageUrl;
    }

    public Integer getIsMember() {
        return isMember;
    }

    public void setIsMember(Integer isMember) {
        this.isMember = isMember;
    }

    public BigDecimal getMemberMoney() {
        return memberMoney;
    }

    public void setMemberMoney(BigDecimal memberMoney) {
        this.memberMoney = memberMoney;
    }

    public String getGrantOpenId() {
        return grantOpenId;
    }

    public void setGrantOpenId(String grantOpenId) {
        this.grantOpenId = grantOpenId;
    }

    public String getNotify() {
        return notify;
    }

    public void setNotify(String notify) {
        this.notify = notify;
    }

    public Long getExtensionState() {
        return extensionState;
    }

    public void setExtensionState(Long extensionState) {
        this.extensionState = extensionState;
    }





    @Override
    public String toString() {
        return "TaoWxUser{" +
        "id=" + id +
        ", createTime=" + createTime +
        ", updataTime=" + updataTime +
        ", delSign=" + delSign +
        ", nickName=" + nickName +
        ", realeName=" + realeName +
        ", registerNumber=" + registerNumber +
        ", idNumber=" + idNumber +
        ", memberGrade=" + memberGrade +
        ", loginPassword=" + loginPassword +
        ", openId=" + openId +
        ", accountNumber=" + accountNumber +
        ", promoterId=" + promoterId +
        ", numberOn=" + numberOn +
        ", numberOff=" + numberOff +
        ", useMoney=" + useMoney +
        ", quotaMoney=" + quotaMoney +
        ", generalizationCode = " + generalizationCode +
        ", commissions = " + commissions +
        ", byGeneralizationCode = " + byGeneralizationCode +
        ", headImageUrl = "+ headImageUrl +
        ", notify = " + notify +
        ", extensionState = " + extensionState +
        "}";
    }
}







